Network System, Interface Board, Method of Controlling Printing on an Network System, and Program

ABSTRACT

A client terminal includes a web page acquisition unit that acquires from a web application server a web page embedding a print control script that operates on a web browser and controls printing related to the web page, a display unit that displays the acquired web page as a displayed web page, a drawing process unit that accepts an input operation on the displayed web page and draws a result of the input operation in a specific drawing area, a print data generation unit that generates print data by converting image data written in the drawing area to a form enabling processing by a printer according to the print control script as a result of a print operation performed on the displayed web page, and a print command unit that commands the printer to print the print data according to the print control script.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of, and claims priority under 35U.S.C §120 on, application Ser. No. 13/978,731, filed Jul. 9, 2013,which is a U.S. national phase application of PCT/JP2012/053584, filedFeb. 8, 2012, which claims priority under 35 U.S.C. §119 on JapanesePatent Application Nos. 2011-027533, 2011-028293 and 2011-032858, filedFeb. 10, 2011, Feb. 14, 2011 and Feb. 18, 2011 respectively. The contentof each such related application is incorporated by reference herein inits entirety.

TECHNICAL FIELD

The present invention relates to a client terminal of a network systemthat controls a printer over a network, to a method of operating aclient terminal in connection with controlling printing on a networksystem, and to a program.

BACKGROUND ART

Printers and other devices are commonly used connected to a computerover a network. In order to use these devices, device drivers to controlthem are required. These device drivers are usually installed to thecomputer connected to the devices. (See, for example, patent document1.)

CITATION LIST Patent Literature

[PTL 1] Japanese Unexamined Patent Appl. Pub. JP-A-2002-251347

SUMMARY OF INVENTION Technical Problem

However, because device driver operation depends upon the operatingsystem (OS) of the computer on which the device driver is installed, theuser must install the device driver appropriate to the OS of the user'scomputer. This is difficult for users that are unfamiliar withcomputers, however, because of the difficulty of determining the versionof the installed OS and installing software (device drivers). When thecomputer is replaced, the device driver must also be installed again.Device manufacturers must also develop device drivers that arecompatible with different computer operating systems, thus increasingthe cost of development.

With consideration for the foregoing problem, an object of the presentinvention is to provide a client terminal of a network system, a methodof operating a client terminal in connection with controlling printingon a network system, and a program for realizing the method, so as toenable controlling a printer without requiring a printer driver that isdependent upon the computer environment.

Solution to Problem

A client terminal accesses a web application server on which a webapplication operates using a web browser. The client terminal comprisesa web page acquisition unit that acquires from the web applicationserver a web page embedding a print control script that operates on theweb browser and controls printing related to the web page; a displayunit that displays the acquired web page as a displayed web page; adrawing process unit that accepts an input operation on the displayedweb page and draws a result of the input operation in a specific drawingarea; a print data generation unit that generates print data byconverting image data written in the drawing area to a form enablingprocessing by a printer according to the print control script as aresult of a print operation performed on the displayed web page; and aprint command unit that commands the printer to print the print dataaccording to the print control script.

In some embodiments, the printer is specified in the print controlscript, and the print command unit issues a print command to the printerspecified by the print control script.

In some embodiments, the client terminal further includes a device listacquisition unit that acquires a device list showing a list of usableprinters from an external source according to the print control script;and a device selection unit that selects the printer from the devicelist according to the print control script.

In some embodiments, the client terminal further includes anidentification information input window display unit that displays anidentification information input window for inputting identificationinformation identifying a user of the client terminal; an identificationinformation transmission unit that sends the identification informationinput by an input operation to the identification information inputwindow to the web application server; a device list acquisition unitthat acquires the web page by the web page acquisition unit when userauthentication succeeds, and acquires the device list from the webapplication server according to the print control script embedded in theacquired web page; and a device selection unit that selects the printerfrom the acquired device list according to the print control script.

In some embodiments, the client terminal further includes anidentification information input window display unit that displays anidentification information input window for inputting identificationinformation identifying a user of the client terminal. In this case, theprint command unit executes a process that sends the print data to beprinted linked to the identification information input by an inputoperation to the identification information input window to a deviceserver according to the print control script as a print command for theprinter.

In some embodiments, the print command unit issues a print command tothe printer specified by externally generated and authenticated printeridentification information according to the print control script.

In some embodiments, the print data generation unit temporarily storesthe generated print data in a specific storage area; and the printcommand unit commands the printer to print the print data in thespecific storage area after all print data is stored in the specificstorage area.

In some embodiments, the display unit displays a change-pageconfirmation window for selecting whether or not to change the web pageaccording to the print control script if a change-page event thatchanges the web page occurs during transmission of the print data inconjunction with a print command from the print command unit.

In some embodiments, the print command unit interrupts print datatransmission when changing the web page is executed during transmissionof the print data according to a print command, and the display unitdisplays a message indicating that the print data transmission wasinterrupted.

In some embodiments, the print command unit executes a print datatransmission process accompanying the print command parallel to achange-page confirmation window display process.

In some embodiments, the print control unit executes a printing processbased on the print data after all of the print data to be printed isreceived by the printer.

In some embodiments, the print data generation unit segments the imagedata into blocks of a data size that can be transmitted in a single datacommunication, and generates segmented print data that converts eachsegmented image data block to a form enabling printing by the printer;and the print command unit transmitting the print data according to aprint command in segmented print data units.

In some embodiments, the client terminal further includes a printsetting unit that configures print settings of the printer according tothe print control script.

In some embodiments, the client terminal further includes a devicemanagement server that communicates with the client terminal over thenetwork and centrally manages printer status; a device statetransmission unit that acquires device state information indicating atleast the printer status and sends the acquired device state informationto a device management server according to the print control script.

Another aspect of the invention entails a method of operating a clientterminal in connection with controlling printing on a network system.The method comprises acquiring, by the client terminal, from a webapplication server a web page embedding a print control script thatoperates on a web browser and controls printing related to the web page;displaying the acquired web page; accepting an input operation on thedisplayed web page and drawing a result of the input operation in aspecific drawing area; generating print data by converting image datawritten in the drawing area to a form enabling processing by a printeraccording to the print control script as a result of a print operationperformed on the displayed web page; and commanding the printer to printthe print data according to the print control script.

The method may further include generating a device list based on deviceinformation acquired by a device server, and receiving the generateddevice list by the client terminal; executing a device list acquisitionstep that acquires the device list from the device server according tothe print control script, and selecting the printer from the device listaccording to the print control script. Here, the commanding step issuesa print command to the printer selected in the device selecting stepaccording to the print control script.

The method may further include displaying an identification informationinput window for inputting identification information, sending theidentification information input by an input operation to theidentification information input window to the web application server,acquiring the web page by the web page acquiring step when userauthentication by the user authentication step succeeds, and acquiringthe device list from the web application server according to the printcontrol script embedded in the acquired web page, and selecting theprinter from the acquired device list according to the print controlscript. Here, the print commanding step issues a print command to theprinter selected by the device selection step according to the printcontrol script.

The method may further include executing an identification informationinput window display step that displays an identification informationinput window for inputting identification information identifying a userof the client terminal. Here, the print commanding step executes aprocess that sends the print data to be printed linked to theidentification information input by an input operation to theidentification information input window to the device server accordingto the print control script as a print command for the printer.

Another aspect of the invention is a non-transitory computer-readablemedium that stores a program that causes a computer to execute the stepsof any of the methods described above.

Such arrangements enable printing a desired image (controlling printingby the printer) from a printer by means of a print control scriptembedded on a web page. More specifically, because printing by theprinter is controlled by a script that runs on a web browser (operatesinside the web page), installing a web browser on the client terminal issufficient, and there is no need to install a printer driver on eachclient terminal as in the related art. In addition, there is also noneed for the printer manufacturer to develop plural different printerdrivers for different operating systems, and the related developmentcost can be reduced. Yet further, because there is no need to provide aspecial application execution environment on the printer side, devicedevelopment and manufacturing costs can be reduced.

Furthermore, because a web browser is normally installed on modernclient terminals (computers includingpersonal computers andsmartphones), even users that are unfamiliar with computers caneasilyuse aprinter without being concerned about the operatingenvironment (such as the operating system) of the terminal being used.

In arrangements that enable presetting the output printer, even usersthat are unfamiliar with computers can easily use a printer withoutbeing concerned about specifying the output printer if, for example, thesystem provider presets the output printer in the print control script.

In some aspects of the invention, when one or more printers areconnected, a list of usable printers (device list) is acquired by theprint control script embedded in the web page, and the printer to beused for output can be selected (specified) from the device list and thedesired images can be printed. More specifically, selecting a printerand running a printing process are enabled by simply installing a webbrowser on the client terminal without installing a printer driver oneach client terminal as in the related art. Installing printer-specificfunctions on the client terminal side (web browser side) is also notnecessary.

When one or more printers is connected, the web application server inthese configurations performs user authentication, and only usersallowed by authentication (for which authentication was successful) canselect a printer from a printer list (device list) acquired by the printcontrol script embedded in the web page and print desired images. Morespecifically, printer users can be authenticated and only permittedusers enabled to select a usable printer and print if a web browser thatacquires (displays) a web page is installed on the client terminal, andthere is no need to install a printer driver on each individual clientterminal as in the related art.

When more than one printer is connected, these configurations enableinputting identification information for identifying a user using theprint control script embedded in the web page, and enable printing froma printer linked to the user if authentication based on the inputidentification information is successful. More specifically, printingcan be enabled while limiting the users that can use a printer if a webbrowser that acquires (displays) a web page is installed on the clientterminal, and there is no need to install a printer driver on eachindividual client terminal as in the related art.

When one or more printers are connected and printing is executedaccording to a print control script embedded in a web page, theseconfigurations enable authenticating the connected printers and printingonly from printers for which authentication succeeded (authenticationwas allowed). More specifically, printing is possible while limiting theprinters used for output if a web browser that acquires (displays) a webpage is installed on the client terminal, and there is no need toinstall a printer driver on each individual client terminal as in therelated art. This can be used, for example, when restricting theprinters that can be used for printing is desirable (when prohibitingprinting on any printer is desirable), such as when printingconfidential information or printing tickets.

Some configurations, enable high speed printing by performing the printdata (such as raster image commands) generation process and the printdata transmission process separately (not in parallel). Blemishes in theprinted image can also be suppressed better in a low performance clientterminal than when the print data generation process and print datatransmission process are executed as parallel processes.

In some configurations, a confirmation window for confirming (selecting)whether or not to actually change the page when the web page changes isdisplayed. Because the invention achieves the function of a printerdriver with a script (print control script), the print control scriptwill disappear and printing be interrupted if the web page changesduring the printing process. As a result, by displaying a confirmationscreen when an event that changes the web page occurs, the operator(user) can be prevented from unintentionally changing the web page.

Some configurations can inform the user that the printing process wasinterrupted. For example, the user may not be aware that the web pagechanged due to an unintentional operation by the user, the print controlscript disappeared, and the printing process was interrupted, but thisaspect of the invention prevents this by reporting interruption of theprinting process.

In arrangements that involve transmitting the print data and displayingthe change-page confirmation window in parallel (in multiple threads),the printing process can continue while the change-page confirmationwindow is displayed to select whether or not to change the web page.

In some arrangements, the printer starts printing after all print datahas been received. When a large amount of print data is received forprinting, for example, this prevents the print control script fromdisappearing and the printing process stopping in the middle as a resultof the web page changing while the print data is being received.

Some configurations, segment and send the print data in data blockssized to enable transmission in a single data communication. As aresult, when a large amount of print data is sent for printing, forexample, this prevents the print control script from disappearing andprint data transmission from being interrupted midway as a result of theweb page changing during print data transmission.

Some arrangements enable configuring the print settings of the printeraccording to the print control script. More specifically, printersettings can be checked or the user can desirably change the printersettings without installing a printer driver on each client terminal asin the related art.

Note that the printer settings include, for example, the paper size,number of copies, print quality, color/BW printing, and image processingmethod.

The print settings made (changed) by the user may also be stored in aspecific storage area. In this case the stored print settings can beread the next time something is printed, eliminating the need for theuser to change the print settings every time.

In some arrangements, the device management server can centrally managethe status of all usable printers. As a result, the system administratoror device manufacturer, for example, can quickly take action when aproblem occurs with a printer. Metered billing according to actualprinter use, for example, is also possible.

Advantageous Effects of Invention

The invention thus enables controlling a printer without requiring aprinter driver that depends on the computer environment.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a system configuration diagram of a network system accordingto a first embodiment of the invention.

FIG. 2 is a block diagram showing the functional configuration of anetwork system according to the first embodiment of the invention.

FIG. 3 is a flow chart describing the printing process of a networksystem according to the first embodiment of the invention.

FIG. 4 is a flow chart describing the process of the network systemaccording to the first embodiment of the invention when an eventchanging the web page occurs during print data transmission.

FIG. 5 is a system configuration diagram showing a variation of thenetwork system according to the first embodiment of the invention.

FIG. 6 is a system configuration diagram of a network system accordingto a second embodiment of the invention.

FIG. 7 is a block diagram showing the functional configuration of thenetwork system according to the second embodiment of the invention.

FIG. 8 is a flow chart describing the printing process of a networksystem according to the second embodiment of the invention.

FIG. 9 is a system configuration diagram of a network system accordingto a third embodiment of the invention.

FIG. 10 is a function block diagram of the network system according tothe third embodiment of the invention.

FIG. 11 is a flow chart describing the user authentication process andprinting process of a network system according to the third embodimentof the invention.

FIG. 12 is a system configuration diagram of a network system accordingto a fourth embodiment of the invention.

FIG. 13 is a function block diagram of the network system according tothe fourth embodiment of the invention.

FIG. 14 is a flow chart describing the user authentication process andprinting process of a network system according to the fourth embodimentof the invention.

FIG. 15 is a system configuration diagram of a network system accordingto a fifth embodiment of the invention.

FIG. 16 is a function block diagram of the network system according tothe fifth embodiment of the invention.

FIG. 17 is a flow chart describing the printer authentication processand printing process of a network system according to the fifthembodiment of the invention.

DESCRIPTION OF EMBODIMENTS

A network system, an interface board, a method of controlling printingon a network system, and a program according to preferred embodiments ofthe invention are described below with reference to the accompanyingfigures. A network system according to the invention is a system thatexecutes a printing process using a web browser without installing adedicated printer driver on the client terminal.

Example 1

FIG. 1 is a system configuration diagram of a network system SY1according to the first embodiment of the invention. As shown in FIG. 1,the network system SY1 includes a web application server 1, a clientterminal 2 connected over the Internet to the web application server 1,and a printer 3 connected to the client terminal 2 over a LAN. Note thatonly one client terminal 2 and one printer 3 are shown in the example inFIG. 1, but the invention is not so limited and a configuration having aplurality of client terminals 2 and a plurality of printers 3 is alsopossible. Either a wired or a wireless connection could also be used toconnect to the network (Internet or LAN).

The web application server 1 has the hardware configuration of a generalcomputer in addition to a control unit 11, storage unit 12, andcommunication unit 13. The main parts of the control unit 11 include aCPU (central processing unit), ROM (read-only memory), and RAM (randomaccess memory). The CPU runs a program stored in ROM, and controlsoperation of the web application server 1. ROM stores control data and acontrol program enabling the CPU to execute various processes. RAM isused as working memory when the CPU executes different processes. AnHTTP server 14 and web application 15 are also stored in the storageunit 12.

The communication unit 13 is an interface for communicating with theclient terminal 2 (web browser 56). Communication between the webapplication server 1 and client terminal 2 is controlled by the HTTPserver 14 using Hypertext Transfer Protocol (HTTP). More specifically,the web application server 1 receives an HTTP request from the clientterminal 2 (web browser 56), and based on the URL (Uni form ResourceLocator) contained in the HTTP request, returns a web page 21 providedby the web application 15 to the client terminal 2.

As described in detail below, in addition to a page control script 22(JavaScript (R)) for controlling the web page 21, the web page 21includes a print control script 23 (JavaScript (R)) for controllingprinting related to the web page 21, and the client terminal 2 executesa printing process by running the print control script 23 on the webbrowser 56 (on the web page 21).

The printer 3 has a control unit 41, storage unit 42, print mechanism43, and communication unit 44 as main parts. The control unit 41 has aCPU and RAM as main parts. The CPU runs programs stored in the storageunit 42, and controls printer 3 operation. RAM is used as working memoryfor the CPU to execute processes. The storage unit 42 is, for example,nonvolatile memory (such as flash ROM), and stores control data andcontrol programs enabling the CPU to run the processes. The storage unit42 also stores an HTTP server 46.

The print mechanism 43 includes a paper feed mechanism, printhead, andpaper cutting mechanism, and performs a printing operation as controlledby the CPU. The printing method is not limited, and could be an inkjetor laser printing method, for example.

The communication unit 44 is an interface for communicating with theclient terminal 2. Communication between the printer 3 and clientterminal 2 (web browser 56) is controlled by the HTTP server 46 usingHTTP. More specifically, when print data is sent from the clientterminal 2 to the service endpoint address (a URI (Uniform ResourceIdentifier) such as http://x.x.x.x/) assigned to the printer 3, theprinter 3 (control unit 41) receives the print data and controls theprint mechanism 43 to print based on the received print data.

The client terminal 2 includes a control unit 51, storage unit 52,display unit 53, operating unit 54, and communication unit 55 as mainparts. The control unit 51 has a CPU and RAM as main parts. The CPU runsa program stored in storage unit 52 and controls client terminal 2operation. RAM is used as working memory for the CPU to run processes.The storage unit 52 is, for example, a HDD (hard disk drive) ornonvolatile memory (such as flash ROM), and stores control data andcontrol programs used by the CPU to execute different processes. Thestorage unit 52 also stores a web browser 56.

The display unit 53 displays a web page 21 acquired (downloaded) by theweb browser 56 in a web browser 56 window, and displays configurationwindows and windows for reporting different events accompanyingoperations performed in the web browser 56. These windows could bedisplayed in the web page 21 displayed by the web browser 56, ordisplayed in a new web page 21. The operating unit 54 is an operatingmeans for performing input operations (such as inputting text anddrawing figures), and making selection/decision operations and printingoperations, in a web page 21 displayed by the web browser 56. Note thatthe display unit 53 and operating unit 54 may be rendered separately orrendered in unison by, for example, using a touch screen panel as thedisplay unit 53.

The communication unit 55 is an interface for communication with the webapplication server 1 and printer 3, and the client terminal 2 (controlunit 51) uses the web browser 56 to communicate with the web applicationserver 1 and printer 3.

The web browser 56 is a simple browser (standard browser) with no pluginmodules, and the client terminal 2 (control unit 51) uses this webbrowser 56 to access the web application server 1 and receive web pages21 provided by the web application 15.

The web page 21 includes a page control script 22 and print controlscript 23 as described above, and when user input is received by the webbrowser 56, the page control script 22 draws the result of the inputoperation (text or image input result) in a specific screen area. Thisdrawing area is a drawing canvas (HTML5 canvas element) defined (set) bythe page control script 22, and the input content is drawn in thiscanvas area and stored as image data.

When the user issues a print command (such as by pressing a printbutton) on the web page 21, the web browser 56 runs the print controlscript 23 embedded in the web page 21, converts the image data writtenin the drawing area to create print data, and sends the print data tothe printer 3 (the service endpoint at the printer 3). The serviceendpoint address of the printer 3 to which the print data is sent isspecified in the print control script 23.

Note that when a plurality of printers 3 are connected, a printer 3service endpoint address that differs according to the print controlscript 23 contained in the web page 21 could be specified according tothe type of the web page 21 (such as the content provided by the webpage 21). More specifically, different output printers 3 could bespecified according to the type of web page 21. The client terminal 2may be any computer on which the web browser 56 operates, and may be amobile terminal (such as a cellular telephone or smartphone), personalcomputer (PC), or other type of device.

The functional configuration of the network system SY1 is described nextwith reference to FIG. 2. The client terminal 2 has a web pageacquisition unit 71, drawing process unit 72, print data generation unit73, print command unit 74, display control unit 75, and print settingsunit 76.

The web page acquisition unit 71 has the control unit 51 and web browser56 as main parts, and uses the web browser 56 to access the webapplication server 1 (web application 15) and get the desired web page21 (the web page 21 containing the page control script 22 and printcontrol script 23).

The drawing process unit 72 has the control unit 51 and page controlscript 22 as main parts, and when the user performs an input operationon the acquired web page 21 (the web page 21 displayed by the webbrowser 56), writes the result of the input operation in the drawingarea.

The print data generation unit 73 has the control unit 51 and printcontrol script 23 as main parts, and when the user performs a printoperation on the acquired web page 21 (the web page 21 displayed by theweb browser 56), runs the print control script 23 to generate print databy converting the data written in the drawing area to a form enablingprocessing by the printer 3 (such as raster image commands, bitmapfiles, or XML print data). More specifically, the print control script23 checks the pixel values of the image data written in the drawingarea, applies an image process such as digitizing or dithering, andgenerates print data that can be processed by the printer 3. The printdata generation unit 73 also temporarily stores the generated print datain a specific storage area (storage unit 52). Temporarily storing theprint data can be done using a web storage device, for example. The pagecontrol script 22 detects print operations, and when triggered bydetecting a print operation the page control script 22 calls the printcontrol script 23 to run the process for generating and temporarilystoring the print data.

The print command unit 74 has the control unit 51, communication unit 55and print control script 23 as main parts, and sends the print datastored by the print data generation unit 73 to the printer 3. Morespecifically, the print data generating process (a process of the printdata generation unit 73) and the print data transmission process (aprocess of the print command unit 74) are not executed as parallelprocesses, and transmission of the print data starts after all printdata has been generated. Note that when the web page 21 changes (a pageunload event occurs) while print data is being sent, the print commandunit 74 interrupts transmission. This is because the print controlscript 23, which is an element of the print command unit 74, is embeddedin the web page 21, and when the web page 21 changes, the print controlscript 23 disappears.

The display control unit 75 has the control unit 51, display unit 53 andprint control script 23 as main parts, and reports events that occurduring the printing process controlled by the print control script 23 tothe user. More specifically, when the user performs an action (invokes abeforeunload event) to change the currently displayed web page 21 whilethe print data is being transmitted, the display control unit 75displays a confirmation window on the display unit 53 enabling the userto confirm whether or not to change the web page 21. If changing the webpage 21 is confirmed in this confirmation window (an unload eventoccurs), the display control unit 75 displays a warning that print datatransmission was interrupted.

Note that the print command unit 74 continues sending the print datawhile the confirmation window is displayed by the display control unit75. More specifically, the print control script 23 displays theconfirmation window and continues sending the print data at the sametime. Parallel processes can be achieved by, for example, using a webworker to run both processes in separate threads.

The print settings unit 76 has the control unit 51 and print controlscript 23 as main parts. When a printing process executes (when the userperforms a printing operation on the web page 21), the print settingsunit 76 prompts the user to input print settings (such as the paper sizeand number of copies as described below) using the print settingsservice provided by the printer 3 (the print settings service provider83 described below). The user settings information is stored in a webbrowser 56 cookie or the web storage device, and when the next printingprocess is performed, the stored print settings are read and the printsettings are restored.

The printer 3 has a print data receiving unit 81, print control unit 82,and print settings service provider 83. The print data receiving unit 81has the control unit 41, communication unit 44 and HTTP server 46 asmain parts, and receives the print data sent from the client terminal 2.

The print control unit 82 has the control unit 41 and print mechanism 43as main parts, and controls printing an image based on the receivedprint data received by the print data receiving unit 81. The printcontrol unit 82 prints in this printing process after all print datasent from the client terminal 2 has been received. More specifically,the print data sent from the client terminal 2 is temporarily stored ina specific area in the storage unit 42, and after all print data hasbeen received, the stored print data is read to execute the printingprocess.

The print settings service provider 83 includes the control unit 41 andHTTP server 46 as main parts, and provides a print settings service(printing configuration function) for configuring printing by theprinter 3 to the client terminal 2. This print settings service isprovided as a user interface (UI) on the web page or as a web serviceAPI (Application Programming Interface), and enables setting the papersize, number of copies, print quality, color/BW printing, and the imageprocessing method, for example.

The printing process of the network system SY1 is described next withreference to the flow chart in FIG. 3. First, the client terminal 2(control unit 51) accesses the web application server 1 (web application15) based on user operation of the web browser 56, gets the desired webpage 21 (a web page 21 containing the page control script 22 and printcontrol script 23), and displays the web page 21 on the web browser 56(S01, web page acquisition step, display step).

When the user then performs an input operation on the web page 21, theclient terminal 2 receives the user input according to the page controlscript 22 embedded on the web page 21, and writes the received result ofthe input operation in the drawing area (S02, drawing process step).After the content is drawn on screen and the user performs a printoperation on the web page 21, the client terminal 2 receives a startprinting command in conjunction with the print operation from the pagecontrol script 22 (S03). Triggered by receiving the start printingcommand, the print control script 23 is called from the page controlscript 22, and the printing process starts.

More specifically, the client terminal 2 applies an image process suchas digitizing or dithering to the image data written in the drawing area(S04), generates print data converted to a format that can be processedby the printer 3 (S05, print data generation step), and saves thegenerated print data in the storage unit 52 (S06), according to theprint control script 23. Note that steps S05 and S06 repeat until printdata generation is completed, that is, until all image data written inthe drawing area is converted to print data (S07 returns No).

When generating the print data is completed (S07 returns Yes), theclient terminal 2 sends the print data saved in the storage unit 52 tothe printer 3 (service endpoint address of the printer 3) according tothe print control script 23 (S08, printing instruction step). Note thatthe control process called when an event that changes the web page 21occurs as a result of the user operating the browser while the printdata is being sent is described below with reference to FIG. 4.

When print data is received from the client terminal 2 (S09), theprinter 3 saves the print data in the storage unit 42 (S10). Steps S09and S10 repeat until all print data is received (S11 returns No). Whenall print data has been received and stored (S11 returns Yes), theprinter 3 reads the stored print data and prints based thereon (printsan image) (S12).

The process that is run when an event that changes the web page 21occurs while print data is being sent by the client terminal 2 isdescribed next with reference to the flow chart in FIG. 4. Note that theprint data to be sent in this process was already generated by steps S01to S07 in FIG. 3. In addition, because a special process is notperformed when an event changing the web page 21 does not occur, furtherdescription thereof is omitted in the description of the flow chart inFIG. 4.

After generating and storing the print data by means of the printcontrol script 23, the client terminal 2 (control unit 51) startssending the print data to the printer 3 (S21). If an event that changesthe displayed web page 21 (that is, the web page 21 in which thecurrently executing print control script 23 is embedded) to a differentpage occurs (S22 returns Yes) as a result of the user operating the webbrowser 56 while print data is being transmitted, the client terminal 2displays a confirmation window for selecting whether or not to changethe web page 21 on the display unit 53 while continuing sending theprint data by means of the print control script 23 (S23).

If the user chooses to cancel changing the web page 21 in thisconfirmation window (S24 returns No), the client terminal 2 continuesthe transmission process until print data transmission is completed bymeans of the print control script 23 (S25 returns No), and when allprint data has been transmitted (S25 returns Yes), ends the transmissionprocess (S26).

However, if the user confirms changing the web page 21 in theconfirmation window (S24 returns Yes), the client terminal 2 stopssending the print data in conjunction with the print control script 23being cleared (S27), and presents a warning that print data transmissionwas interrupted on the display unit 53 (S28).

As described above, this first embodiment of the invention enables usinga print control script 23 embedded in a web page 21 to print a specificimage from a printer 3. More specifically, because a script thatoperates in a web browser 56 (operates in a web page 21) controlsprinting by the printer 3, simply installing a web browser 56 on theclient terminal 2 is sufficient, and installing a printer driver on eachclient terminal 2 as required by the related art is not necessary. Thecost of development can also be reduced for the printer 3 manufacturerbecause the need to develop different printer drivers for each operatingsystem is eliminated. In addition, because there is also no need toinstall a special application execution environment on the printer 3,the cost of printer development and manufacturing can also besuppressed.

Furthermore, because a web browser 56 is typically installed as standardon most modern client terminals 2 (including personal computers andsmartphones), users that are unfamiliar with computers can easily use aprinter 3 without being aware of the operating environment (such as thetype of OS) that is being used.

The foregoing first embodiment describes a configuration in which theprinter 3 directly receives the print data sent from the client terminal2 and runs the printing process, but the invention is not so limited.For example, as shown in FIG. 5, a configuration in which an interfaceboard 100 (installable board) that is removably installed to the printunit 90 receives the print data sent from the client terminal 2 and runsthe printing process is also conceivable. In this case, the printer 110is rendered by the interface board 100 and print unit 90, and theinterface board 100 is connected to the print unit 90 through the boardinterface 105 and printer interface 92. The print unit 90 gets the printdata from the interface board 100 through the printer interface 92, andcontrols the print mechanism 93 by the control unit 91. Note thatreference numerals 101, 102, 104, 106 in the interface board 100 in FIG.5 function as reference numerals 41, 42, 44, 46 of the printer 3 inFIG. 1. The invention can therefore be introduced with general-useprinters because no special function needs to be incorporated into theprint unit 90.

Example 2

A network system SY2 according to a second embodiment of the inventionis described next with reference to FIG. 6 to FIG. 8. The network systemSY2 according to the second embodiment of the invention differs from thenetwork system SY1 according to the first embodiment of the invention inthat a plurality of printers 3 (3A to 3C) are connected through theinterface board 4 (device server); a list of usable printers 3 isgenerated by a function provided by the interface board 4, and thedesired printer 3 (the printer 3 selected for output) is specified fromthe list using a web browser 56 on the client terminal 2 and prints; andthe printer 3 status is managed by a device management server 5. Otheraspects of this embodiment are the same as the network system SY1according to the first embodiment of the invention.

Note that parts that are the same as in the first embodiment areidentified by like reference numerals in this second embodiment of theinvention, and further detailed description thereof is omitted. Inaddition, variations that are applicable to like parts of the firstembodiment can be similarly applied in the second embodiment. Thedifferences in particular are described below.

FIG. 6 shows the configuration of the network system SY2. As shown inFIG. 6, the network system SY2 includes a web application server 1,client terminal 2 (one shown in FIG. 6), a printer 3 (three printers 3A,3B, 3C shown in FIG. 6), a (removable) interface board 4 connected tothe printers 3, and a device management server 5 that manages the statusof all printers 3.

The web application server 1 and the client terminal 2, and the clientterminal 2 and the device management server 5, are communicativelyconnected over the Internet. The client terminal 2 and interface board 4are communicatively connected over a LAN. An interface board 4 isinstalled to one printer 3 (printer 3A in the second embodiment), andthe other two printers 3 (printers 3B and 3C) are connected through acommunication unit 33 on the interface board 4. Note that FIG. 6 showsan example having one client terminal 2 and three printers 3, but theinvention is not so limited and the number of each can be determined asdesired.

The interface board 4 has a control unit 31, storage unit 32,communication unit 33 and board interface 34. The control unit 31primarily includes a CPU and RAM. The CPU runs a program stored in thestorage unit 32 and controls interface board 4 operation. RAM is used asworking memory for the CPU to execute processes. The storage unit 32 isnonvolatile memory (such as flash ROM), and stores control data andcontrol programs for the CPU to execute the processes. The storage unit32 also stores a list of HTTP servers 35 and usable (connected) printers3 (referred to below as the device list 36).

Information contained in the device list 36 (“device information” below)includes as basic device information for each printer 3 the printer IDand printer name assigned to the printer 3, and the communication portto which the printer 3 is connected. Detailed device informationincludes the printer 3 status (normal/error); the print settings (papersize, number of copies, print quality, color/BW printing, imageprocessing method); optional device information about any optionaldevices (such as a paper feed cassette or duplex printing unit)connected to the printer 3; and consumables information (such as howmuch paper is left and the remaining ink level). Note that this deviceinformation is described for example only, and the invention is notlimited thereto.

The board interface 34 is a port for installation to the printer 3(printer 3A), and communication with the printer 3A passes through thisboard interface 34. The communication unit 33 is an interface forcommunicating with the client terminal 2 and another printer 3 (printers3B and 3C in the second embodiment), and is a group of interfacescompatible with different kinds of connections, such as a LAN interfaceand a USB interface.

The HTTP server 35 handles communication between the interface board 4and the client terminal 2 (web browser 56) using HTTP. Morespecifically, when device information (printer ID and communicationport) for the output printer 3 and the print data are sent from theclient terminal 2 to the service endpoint address (URI) assigned to theinterface board 4, the interface board 4 sends the received print datato the printer 3 identified as the output address (as further describedbelow).

The printer 3 is primarily composed of the control unit 41, storage unit42, print mechanism 43, communication unit 44, and printer interface 45.Note that because printers 3A, 3B, and 3C are identical, only theconfiguration of printer 3A is shown in FIG. 6.

The printer interface 45 connects to the interface board 4 (boardinterface 34) and handles communications (is a port for installing theinterface board 4). The communication unit 44 is an interface forcommunicating with the interface board 4, and is a group of interfacescompatible with different kinds of connections, such as a LAN interfaceand a USB interface. The printer 3 receives and prints print data sentfrom the client terminal 2 (through the interface board 4) through theprinter interface 45 or the communication unit 44. The printer 3 alsosends the result of the printing process (the status of the printer 3(device information), such as printing completed or error occurred) tothe client terminal 2 (through the interface board 4).

Note that, as described above, because the interface board 4 isinstalled to printer 3A in the second embodiment, printer 3Acommunicates through the printer interface 45 with the interface board4, and printers 3B and 3C communicate through the communication unit 44with the interface board 4. More specifically, the communication unit 44of printer 3A is unused (not connected), and the printer interfaces 45of printers 3B and 3C are unused (not connected), in this secondembodiment.

The client terminal 2 includes as main parts a control unit 51, storageunit 52, display unit 53, operating unit 54, and communication unit 55.The communication unit 55 is an interface for communicating with the webapplication server 1, interface board 4 and device management server 5,and the client terminal 2 (control unit 51) communicates with otherdevices through the web browser 56.

More specifically, the client terminal 2 uses the web browser 56 toaccess a web application server 1 connected to the network, and get aweb page 21 (containing page control script 22 and print control script23) provided by the web application 15.

When the user performs a print operation on the web page 21, the webbrowser 56 runs the print control script 23 embedded on the web page 21,gets the device list 36 from the interface board 4, and based thereondisplays a printer selection window for selecting the output printer 3(in this second embodiment, a window for selecting one of printers 3A to3C). When the desired printer 3 is selected from the list in the printerselection window and a print command is issued by the user, the imagedata written in the drawing area is converted to produce print data, andthe print data is sent with the device information (printer ID, portinformation) for the specified printer 3 to the interface board 4 (theservice endpoint of the interface board 4).

The client terminal 2 also sends the device information for the printer3 to the device management server 5. This device information includes atleast the basic device information (printer ID, printer name,communication port) and the printer 3 status. Information that isupdated based on the result of each printing process (printing completedor error occurred) received from the printer 3 is sent as the printer 3status. Note that the device information sent to the device managementserver 5 is not limited to the above, and sending other deviceinformation is also possible.

In addition to a control unit 61, storage unit 62, communication unit63, and display unit 64, the device management server 5 also has thehardware components of a typical computer. The control unit 61 includesprimarily a CPU, ROM, and RAM. The CPU runs a program stored in ROM, andcontrols device management server 5 operation. ROM stores control dataand a control program enabling the CPU to run different processes. RAMis used as working memory for the CPU to execute processes. The storageunit 62 stores a device management application 66 for centrally managingthe HTTP server 65 and printer 3 status.

The communication unit 63 is an interface for communicating with theclient terminal 2 (web browser 56). Communication between the devicemanagement server 5 and client terminal 2 is managed by the HTTP server65 using HTTP, and device information (basic device information andprinter status) is acquired (received) from the client terminal 2. Thedisplay unit 64 is an LCD panel, for example, and displays the status ofeach printer 3 based on the device information acquired from the clientterminal 2 in an application window of the device management application66.

The functional configuration of the network system SY2 is described nextwith reference to FIG. 7. The interface board 4 has a device informationacquisition unit 201, device list generation unit 202, device listtransmission unit 203, and print data relay unit 204. The deviceinformation acquisition unit 201 primarily includes the control unit 31,searches for connected usable printers 3, and acquires deviceinformation from each of the found (detected) printers 3. The deviceinformation acquisition unit 201 looks for network-connected printers 3using SNMP (Simple Network Management Protocol), for example, andacquires the device information from the Management Information Base(MIB) of the connected printer 3.

The device list generation unit 202 has the control unit 31 as a mainpart, and generates and stores a device list 36 (list of usable printers3) in the storage unit 32 based on the device information acquired bythe device information acquisition unit 201. The device listtransmission unit 203 primarily includes the control unit 31,communication unit 33, and HTTP server 35, and when a request for thedevice list 36 is received from the client terminal 2, responds bysending the device list 36 stored in the storage unit 32. The print datatransmission unit 204 primarily includes the control unit 31,communication unit 33, board interface 34 and HTTP server 35, receivesthe output printer information and print data described below from theclient terminal 2, and sends the print data to the printer 3 specifiedby the output printer information. The print data transmission unit 204also receives and sends the printing process result from the printer 3to the client terminal 2.

The client terminal 2 includes a web page acquisition unit 71, drawingprocess unit 72, device list acquisition unit 211, printer selectionunit 212 (device selection unit), print settings unit 213, print datageneration unit 73, print command unit 214, and device statetransmission unit 215.

The device list acquisition unit 211 primarily includes the control unit51 and print control script 23, sends a device list 36 request to theinterface board 4 according to the print control script 23, and inresponse receives the device list 36 from the interface board 4.

The printer selection unit 212 primarily includes the control unit 51and print control script 23, displays a printer selection window forselecting one printer 3 from the acquired device list 36, and sets theprinter 3 selected by the user as the print data destination. Note thatthe acquired device list 36 and the information for the printer 3 set asthe destination may be stored in a cookie by the web browser 56 or in aweb storage device so that the stored data can be read and reset thenext time.

The print settings unit 213 primarily includes the control unit 51 andprint control script 23, and displays a device information configurationwindow for displaying and setting the device information (basic deviceinformation and detailed device information) of the printer 3 selectedwith the printer selection unit 212. This device informationconfiguration window is displayed when, for example, a certain button(such as a properties button) in the printer selection window isoperated, and displays the optional device information and consumablesinformation of the printer 3, and enables configuring printer settingssuch as the paper size, number of copies, print quality, color/BWprinting, and the image processing method. The print settings unit 213also stores the settings changed by the user in a cookie of the webbrowser 56 or on a web storage device so that the stored print settingscan be read and the print settings can be reset the next time printingis done.

The print command unit 214 primarily includes the control unit 51,communication unit 55, and print control script 23, and sends the deviceinformation (information for the destination printer (printer ID andcommunication port)) for the output printer 3 selected by the printerselection unit 212, and the print data temporarily stored by the printdata generation unit 73, to the interface board 4. Note that the printcommand unit 214 stops transmission if the web page 21 changes while theprint data is being sent.

The device state transmission unit 215 primarily includes the controlunit 51 and print control script 23, receives the results of printingprocesses from the printer 3 through the interface board 4, and sendsdevice information (printer ID, printer name, communication port andprinter 3 status) updated according to the printing process results tothe device management server 5.

The printer 3 has a print data receiving unit 221, print control unit 82and print result transmission unit 222. The print data receiving unit221 primarily includes the the control unit 41, communication unit 44,and printer interface 45, and receives print data sent from the clientterminal 2 through the interface board 4. The print result transmissionunit 222 sends the printer 3 status, such as whether the printingprocess ended normally (printing completed) or whether the printingprocess failed (error occurred), through the interface board 4 to theclient terminal 2.

The device management server 5 has a device state reception unit 231 anddevice state reporting unit 232. The device state reception unit 231primarily includes the control unit 61, communication unit 63, and HTTPserver 65, and receives device information (printer ID, printer name,communication port and printer 3 status) for each printer 3 from theclient terminal 2. The device state reporting unit 232 primarilyincludes the the control unit 61, display unit 64, and device managementapplication 66, and displays the status of each printer 3 in a window ofthe device management application 66 based on the received deviceinformation.

The printing process in this network system SY2 is described next withreference to the flow chart in FIG. 8. Note that the device list 36 isgenerated and stored by a process of the device information acquisitionunit 201 (device information acquisition step) and a process of thedevice list generation unit 202 (device list generation step). Inaddition, because S31 to S33 and S39 to S42 in FIG. 8 are identical toS01 to S03 and S04 to S07 in FIG. 3 of the first embodiment, detaileddescription thereof is omitted below.

When the client terminal 2 receives the start printing command in S33,this triggers the print control script 23 being called from the pagecontrol script 22, and the printing process starts. More specifically,the client terminal 2 requests the device list 36 from the interfaceboard 4 according to the print control script 23 (S34). When thisrequest is received, the interface board 4 returns the device list 36stored in the storage unit 32 to the client terminal 2 in response (S35,device list transmission step).

When the client terminal 2 then acquires the device list 36 from theinterface board 4 (S36, device list acquisition step), the clientterminal 2 displays the printer selection window for selecting theoutput printer 3 based thereon (S37). When the user then selects andverifies one printer 3 from the printer selection window, the clientterminal 2 sets the selected printer 3 as the output destination of theprint data (S38, device list selection step).

The client terminal 2 then generates and stores the print data by meansof the print control script 23 (S39-S42, drawing process step, printdata generation step), and after generating the print data is completed(S42; Yes), sends the information about the printer 3 set as thedestination and the print data stored in the storage unit 52 to theinterface board 4 (service endpoint address of the interface board 4)according to the print control script 23 (S43, printing instructionstep).

When the output printer information and print data is received from theclient terminal 2 (S44), the interface board 4 sends the print data tothe printer 3 specified by the output printer information (S45).

The printer 3 stores the print data received from the interface board 4(S46) in the storage unit 42 (S47). These steps S46 and S47 repeat untilall print data has been received (S48 returns No). When receiving allprint data is completed (S48 returns Yes), the printer 3 reads thestored print data and prints (prints an image) based thereon (S49).

When the printing process ends, the printer 3 sends the result (printingprocess result: printing completed/error occurred) through the interfaceboard 4 to the client terminal 2 (S50, S51). Next, when the printingprocess result is received from the printer 3 (interface board 4),(S52), the client terminal 2 sends device information reflecting theresult to the device management server 5 (S53). The client terminal 2may also display the printing process result on its own display unit 53(or in the web browser 56). When device information is then receivedfrom the client terminal 2 (S54), the device management server 5displays (updates) the printer 3 status in a window of the devicemanagement application 66 based on the received device information(S55).

When a plurality of printers 3 are connected as described in the secondembodiment above, the device list 36 (a list of usable printers 3) isacquired according to the print control script 23 embedded in the webpage 21, the output printer 3 is selected (specified) from the devicelist 36, and the desired image can be printed. More specifically, theprinter 3 can be selected and a printing process can be executed bysimply installing a web browser 56 on the client terminal 2, withoutinstalling a printer driver on each client terminal 2 as in the relatedart.

Note that the interface board 4 finds the usable printers 3 andgenerates the device list 36 in the second embodiment, but the inventionis not so limited. For example, the interface board 4 could provide aprinter registration function for manually registering printers 3, andthe user could use this printer registration function from the webbrowser 56 (client terminal 2) to generate the device list 36 byinputting, for example, the printer ID, printer name, and boardinformation for the target printer 3.

Example 3

A network system SY3 according to a third embodiment of the invention isdescribed next with reference to FIG. 9 to FIG. 11. The network systemSY3 according to the third embodiment of the invention differs from thenetwork system SY2 according to the second embodiment of the inventionin that authentication of users that use the printer 3, and managing alist of usable printers 3 (device list 36), are managed by the webapplication server 1; and only users that are allowed by authenticationby the web application server 1 can select a printer 3 based on thedevice list 36 and print. Other aspects of this embodiment are the sameas in the network system SY2 according to the second embodiment of theinvention. Note that like parts in the first and second embodiments areidentified by the same reference numerals in the third embodiment, andfurther detailed description thereof is omitted. In addition, variationsof like parts that are applicable to the first and second embodimentsare similarly applicable to this embodiment. The differences inparticular are described below.

FIG. 9 shows the configuration of the network system SY3. The webapplication server 1 includes, in addition to a control unit 11, storageunit 12 (device list storage unit, user information storage unit), andcommunication unit 13, other hardware components of a typical computer.The storage unit 12 stores, in addition to a HTTP server 14 and webapplication 15, a device list 36 and user database 17. The device list36 is a list of usable printers 3, and includes at least the printer ID,printer name, and communication port to which the printer 3 is connectedas device information. Note that this device information is simply anexample, and the invention is not limited thereto. The user database 17is a database for administering information (“user information” below)about a user that is permitted to use the web application 15, andcontains a user ID for identifying the user and a related password.

The communication unit 13 is an interface for communicating (HTTPcommunication) with the client terminal 2 (web browser 56). When theclient terminal 2 accesses (HTTP request) the web application 15, theweb application server 1 authenticates the login based on informationinput from the client terminal 2 (referred to below as the useridentification information (identification information)), and permitsaccess to the web application 15 and sends the desired web page 21(including page control script 22 and print control script 23) only whenauthentication is successful. The web application server 1 sends thedevice list 36 of usable printers 3 to the permitted client terminal 2(user).

The client terminal 2 primarily includes the control unit 51, storageunit 52, display unit 53, operating unit 54, and communication unit 55.The operating unit 54 is an operating means for inputting useridentification information (user ID and password) in addition toperforming input operations (such as inputting text and drawingfigures), and making selection/decision operations and printingoperations, in a web page 21 displayed by the web browser 56.

The communication unit 55 is an interface for communicating with the webapplication server 1 and interface board 4, and the client terminal 2communicates with other devices using the web browser 56. The clientterminal 2 (control unit 51) uses the web browser 56 to access the webapplication server 1 and get the web page 21 provided by the webapplication 15. To get the web page 21, the client terminal 2 firstsends the user identification information input by the user to the webapplication 15 (web application server 1) in order to login to the webapplication 15. After the login is authenticated based on the useridentification information by the web application 15, that is, afteraccess to the web application 15 is permitted, the desired web page 21is received.

When the user performs a print operation on the web page 21, the clientterminal 2 runs the print control script 23 embedded in the web page 21,gets the device list 36 from the web application server 1, and displaysa printer selection window (in this third embodiment, a window forselecting one of printers 3A to 3C) for selecting the output printer 3based thereon. When the user then selects the desired printer 3 from thelist in the printer selection window and issues a print command, theclient terminal 2 converts the image data written in the drawing areaand generates print data, and sends the print data and the deviceinformation (printer ID and communication port) for the selected printer3 to the interface board 4 (the service endpoint).

The functional configuration of the network system SY3 is described nextwith reference to FIG. 10. The web application server 1 includes a useridentification information reception unit 301, user authentication unit302, and device list transmission unit 303. The user identificationinformation reception unit 301 mainly includes the control unit 11, HTTPserver 14 and web application 15, and receives user identificationinformation (user ID and password) sent from the client terminal 2.

The user authentication unit 302 mainly includes the control unit 11,web application 15 and user database 17, and authenticates the user(authenticates login) when the user accesses the web application 15using the client terminal 2 (web browser 56). More specifically, theuser authentication unit 302 determines if the user identificationinformation received by the user identification information receptionunit 301 is registered in the user database 17. If the received useridentification information is registered in the user database 17(authentication succeeds), use of the web application 15 by the user(login to the web application 15) is permitted; if not registered in theuser database 17 (authentication fails), use of the web application 15by the user (login to the web application 15) is rejected, and theclient terminal 2 is prompted for re-input of the user identificationinformation.

The device list transmission unit 303 includes as main parts the controlunit 11 and HTTP server 14, and when a device list 36 request isreceived from the client terminal 2, sends the device list 36 stored inthe storage unit 12 in response.

The client terminal 2 includes a log-in window display unit 311(identification information input window display unit), useridentification information input unit 312, user identificationinformation transmission unit 313 (identification informationtransmission unit), web page acquisition unit 314, drawing process unit72, device list acquisition unit 315, printer selection unit 212 (deviceselection unit), print data generation unit 73, and print command unit214.

The log-in window display unit 311 includes as main parts the controlunit 51, display unit 53 and web browser 56, and displays a login window(identification information input window) for inputting useridentification information to login to the web application 15 on the webbrowser 56. The user identification information input unit 312 includesas main parts the control unit 51, operating unit 54 and web browser 56,and inputs the user identification information based on user operationsin the login window. The user identification information transmissionunit 313 includes as main parts the control unit 51 and web browser 56,and sends the user identification information input by the useridentification information input unit 312 to the web application server1 (web application 15).

The web page acquisition unit 314 includes as main parts the controlunit 51 and web browser 56, when login is authenticated by the webapplication server 1, acquires the desired web page 21 (including pagecontrol script 22 and print control script 23) from the web applicationserver 1 (web application 15) by the web browser 56.

The device list acquisition unit 315 includes as main parts the controlunit 51 and print control script 23, sends a request for the device list36 to the web application server 1 by means of the web applicationserver 1, and gets the device list 36 from the web application server 1in response.

The interface board 4 has a print data relay unit 321. The print datarelay unit 321 includes as main units the control unit 31 and HTTPserver 35, receives the output printer information and print data fromthe client terminal 2, and sends print data to the printer 3 specifiedby the output printer information.

The user authentication process and printing process of the networksystem SY3 are described next with reference to the flow chart in FIG.11. Note that steps S75 to S85 in FIG. 11 are the same as steps S39 toS49 in FIG. 8 according to the second embodiment of the invention, andfurther description thereof is therefore omitted below.

First, the client terminal 2 (control unit 51) accesses the webapplication server 1 (web application 15) based on user operations inthe web browser 56, and displays a login window for logging into the webapplication 15 on the web browser 56 (S61, identification informationinput window display step). User identification information (user ID andpassword) is then input (S62) by the user inputting data to the loginwindow, and the client terminal 2 sends the input user identificationinformation to the web application server 1 (S63, identificationinformation transmission step).

When the web application server 1 (control unit 11) receives useridentification information from the client terminal 2 (S64,identification information reception step), the web application server 1applies an authentication process to the received user identificationinformation (S65, user authentication step). More specifically, the webapplication server 1 determines if the received user identificationinformation is registered in the user database 17. If the useridentification information is not registered in the user database 17(authentication fails; S66 returns No), the web application server 1prompts the client terminal 2 for the user identification information tobe input again, and the client terminal 2 repeats the process from S61.However, if the user identification information is registered in theuser database 17 (authentication succeeds; S66 returns Yes), the webapplication server 1 allows the client terminal 2 to log into the webapplication 15.

The client terminal 2 that was permitted to log in then gets the desiredweb page 21 from the web application server 1 (web application 15)according to user operation of the web browser 56, and displays the webpage 21 on the web browser 56 (S67, web page acquisition step, displaystep).

When the user then performs an input operation on the web page 21, theclient terminal 2 receives the input operation according to the pagecontrol script 22 embedded on the web page 21, and writes the result ofthe received input operation in the drawing area (S68). If the user thenperforms a print operation on the web page 21 from this state (afterwriting), the client terminal 2 gets a start printing command inconjunction with the printing operation from the page control script 22(S69). Triggered by receiving this start printing command, the printcontrol script 23 is called from the page control script 22, and theprinting process is started.

More specifically, the client terminal 2 requests the device list 36from the web application server 1 by means of the print control script23 (S70). When this request is received, the web application server 1sends the device list 36 stored in the storage unit 12 to the clientterminal 2 in response (S71). When the device list 36 is acquired fromthe web application server 1 (S72, device list acquisition step), theclient terminal 2 (print control script 23) displays the printerselection window for selecting the output printer 3 (S73). When the userthen selects and confirms one printer 3 in the printer selection window,the client terminal 2 sets the selected printer 3 as the outputdestination for the print data (S74, device selection step).

Next, the client terminal 2 generates and saves the print data accordingto the print control script 23 (S75-S78, drawing process step, printdata generation step), and after generating the print data is completed(S78; Yes), sends the information for the printer 3 set as the outputprinter (output printer information) and the saved print data to theinterface board 4 (S79, printing instruction step). The interface board4 (control unit 31) then sends the print data to the printer 3identified by the output printer information received from the clientterminal 2 (S80, S81). The printer 3 (control unit 41) then prints basedon the print data after all print data is received from the interfaceboard 4 (S82-S85).

When plural printers are connected as described in this third embodimentabove, user authentication is performed by the web application server 1,and only users for which authentication was allowed (authenticationsucceeded) can select a printer 3 from the device list 36 (printer list)acquired by the print control script 23 embedded in the web page 21 andprint the desired image. More specifically, having a web browser 56 thatdisplays (acquires) a web page 21 installed on the client terminal 2 issufficient to authenticate the user of the printer 3 and enable onlypermitted users to select a usable printer 3 and print, and installing aprinter driver on each client terminal 2 as in the related art is notnecessary.

Example 4

A network system SY4 according to a fourth embodiment of the inventionis described next with reference to FIG. 12 to FIG. 14. The networksystem SY4 according to the fourth embodiment of the invention differsfrom the network system SY3 according to the third embodiment of theinvention in that authentication of users of the printer 3 is handled onthe interface board 4 side. More specifically, this embodiment differsin that the interface board 4 has a authentication processor 401 anduser database 402, and the authentication processor 401 authenticatesthe user identification information (information that identifies theuser: user ID and password, identification information) received fromthe client terminal 2, and permits use of the printer 3 (print imagesfrom the printer 3) when authentication is successful. Other aspects ofthis embodiment are the same as in the network system SY3 according tothe third embodiment of the invention. Note that like parts in the firstto third embodiments are identified by the same reference numerals inthe fourth embodiment, and further detailed description thereof isomitted. In addition, variations of like parts that are applicable tothe first to third embodiments are similarly applicable to thisembodiment. The differences in particular are described below.

As shown in FIG. 12, the interface board 4 of the network system SY4according to the fourth embodiment of the invention also has anauthentication processor 401 and user database 402 (user informationstorage unit). The user database 402 is a database for managing usersthat are permitted to use the printer 3, and stores a user ID andpassword (user information) for identifying a user linked to the printerID of the printer 3 the user can use and the communication port to whichthe printer 3 is connected (the ID and communication port of the printer3 allowed to be used by the user identified by the user ID, collectivelyreferred to below as the printer information (printer identificationinformation)). The authentication processor 401 authenticates printer 3users based on the user identification information received from theclient terminal 2 and the user database 402.

The functional configuration of the network system SY4 is described nextwith reference to the function block diagram in FIG. 13. The clientterminal 2 has a web page acquisition unit 71, drawing process unit 72,user identification information input window display unit 411(identification information input window display unit), useridentification information input unit 412, print data generation unit73, and print command unit 413.

The user identification information input window display unit 411includes as main parts a control unit 51, display unit 53, print controlscript 23 and web browser 56, and by means of the print control script23 displays on the web browser 56 a user identification informationinput window (identification information input window) for inputtinguser identification information (user ID and password) used forauthentication when a user uses the printer 3. The user identificationinformation input unit 412 includes as main parts a control unit 51,operating unit 54 and web browser 56, and inputs user identificationinformation based on input operations by the user in the useridentification information input window. The print command unit 413includes as main parts the control unit 51 and print control script 23,and outputs the user identification information input by the useridentification information input unit 412 related to the print datagenerated by the print data generation unit 73 to the interface board 4.

The interface board 4 has a data reception unit 421, user authenticationunit 422, output printer setting unit 423, and print data relay unit424. The data reception unit 421 includes the control unit 31 and HTTPserver 35 as main parts, and receives user identification informationand print data from the client terminal 2 (print command unit 413).

The user authentication unit 422 includes as main parts the control unit31, authentication processor 401 and user database 402, and performsauthentication of users using the printer 3. More specifically, the userauthentication unit 422 compares the received user identificationinformation and the user information registered in the user database402, determines that authentication succeeded if the user identificationinformation matches user information registered in the user database402, and determines that authentication of the user identificationinformation (user) failed if there is no matching user information.

The output printer setting unit 423 includes as main parts the controlunit 31 and authentication processor 401, and sets the printer 3 usedfor printing based on the result of authentication by the userauthentication unit 422. More specifically, when authentication by theuser authentication unit 422 is successful, the printer 3 identified bythe printer information (printer ID and communication port) linked tothe user information matching the user identification information is setas the output printer. If authentication failed, a message indicatingthat printer 3 access is not allowed is sent to the client terminal 2(user). The print data transmission unit 424 includes mainly the controlunit 31, and sends print data to the printer 3 set as the output printerby the output printer setting unit 423.

The user authentication process and printing process of the networksystem SY4 according to the fourth embodiment of the invention isdescribed next with reference to the flow chart in FIG. 14. Note thatsteps S91-S93, S96-S99 and S107-S110 in FIG. 14 are identical to stepsS31-S33, S39-S42 and S46-S49 in FIG. 8 according to the secondembodiment of the invention, and detailed description thereof istherefore omitted.

When the client terminal 2 receives a start printing command in S93, theprint control script 23 of the client terminal 2 displays a useridentification information input window (S94, identification informationinput window display step), and the user identification information(user ID and password) is input (S95) as a result of user input to theinput window. The input user identification information is then storedin a web browser 56 cookie or web storage device (stored in storage unit52), for example.

The client terminal 2 then generates and saves print data by means ofthe print control script 23 (S96-S99, drawing process step, print datageneration step), and after generating the print data is completed (S99returns Yes), the input user identification information and print dataare sent together to the interface board 4 (S100, printing instructionstep).

When the user identification information and print data are receivedfrom the client terminal 2 (S101, data reception step), the interfaceboard 4 (control unit 31) applies the authentication process to thereceived user identification information (S102, user authenticationstep). More specifically, whether the received user identificationinformation is registered in the user database 402 is determined. If theuser identification information is not in the user database 402(authentication fails; S103 returns No), the interface board 4 sends awarning message to the client terminal 2 indicating that the printer 3cannot be used because user authentication failed (that is, that theuser cannot print from the printer 3) (S104).

If the user identification information is registered in the userdatabase 402 (authentication succeeds; S103 returns Yes), the interfaceboard 4 extracts printer information (printer ID and communication port)linked to the user information matching the user identificationinformation, and sets the printer 3 specified by the printer informationas the output printer 3 (S105, output printer setting step). Theinterface board 4 then sends the print data to the printer 3 set as theoutput printer (S106, print data relay step). The printer 3 (controlunit 41) then prints based on the print data after all print data isreceived from the interface board 4 (S107-S110).

When plural printers 3 are connected as described in this fourthembodiment above, user identification information (user information) foridentifying the user is input using the print control script 23 embeddedon a web page 21, and authentication based on the input useridentification information is successful, the user can print from aprinter 3 linked to the user. More specifically, having a web browser 56that displays (acquires) a web page 21 installed on the client terminal2 is sufficient to enable printing and limit what users can use theprinter 3 without installing a printer driver on each client terminal 2as in the related art.

Example 5

A network system SY5 according to a fifth embodiment of the invention isdescribed next with reference to FIG. 15 to FIG. 17. In the networksystem SY5 according to the fifth embodiment of the invention, the webapplication server 1 authenticates the printer 3 by an authenticationprocess that uses an encryption key (secret key), and enables imageprinting from a permitted printer 3. More specifically, the printer 3that can be used for printing is limited by printer 3 authentication. Asshown in the system diagram in FIG. 15, the network system SY5 accordingto the fifth embodiment of the invention differs from the network systemSY3 according to the third embodiment of the invention in that the webapplication server 1 has an authentication processor 501, and theinterface board 4 has an encryption processor 502 and printer managementdatabase 503. Other aspects of this embodiment are the same as in thethird embodiment of the invention. Note that like parts in the first tofourth embodiments are identified by the same reference numerals in thefifth embodiment, and further detailed description thereof is omitted.In addition, variations of like parts that are applicable to the firstto fourth embodiments are similarly applicable to this embodiment. Thedifferences in particular are described below.

As shown in FIG. 15, the web application server 1 of the network systemSY5 according to the fifth embodiment of the invention has anauthentication processor 501. The authentication processor 501authenticates the printer 3 with the interface board 4 using a challengeand response authentication method. More specifically, theauthentication processor 501 authenticates the printer 3 by sendingauthentication request information (a random numeric string that differswith each authentication) used for printer 3 authentication to theinterface board 4 through the client terminal 2 (print control script23), and comparing the authentication response information received fromthe interface board 4 as a response to the authentication requestinformation with the result of encrypting the authentication requestinformation (the authentication request information that was sent) usinga previously stored encryption key (server encryption key, not shown).

The interface board 4 has an encryption processor 502 and printermanagement database 503 (printer management information storage unit).The printer management database 503 is a database for managing printers3 connected to the interface board 4, and stores the printer ID andcommunication port (printer identification information) for each printer3 (for each of printers 3A to 3C in this fifth embodiment) with arelated encryption key (printer encryption key) that is different foreach printer 3. The encryption processor 502 encrypts the authenticationrequest information received from the web application server 1 using theprinter encryption key of each printer 3 registered in the printermanagement database 503, and sends the encrypted information (encryptedauthentication information) and the printer ID and communication portlinked to the printer encryption key used for encryption (togetherreferred to as the “authentication response information” below) throughthe client terminal 2 (print control script 23) to the web applicationserver 1.

The functional configuration of the network system SY5 is described nextwith reference to the function block diagram in FIG. 16. The webapplication server 1 has an authentication request informationtransmission unit 511, authentication response information receptionunit 512, printer authentication unit 513 and authentication resulttransmission unit 514. The authentication request informationtransmission unit 511 has a main parts the control unit 11,authentication processor 501 and HTTP server 14, and sendsauthentication request information to the interface board 4 (through theclient terminal 2 (print control script 23)). Note that thistransmission process starts when a request to execute the authenticationprocess is received from the client terminal 2 (the authenticationprocess request unit 521 described below).

The authentication response information reception unit 512 includes asmain parts the control unit 11, authentication processor 501 and HTTPserver 14, and receives authentication response information (encryptedauthentication information, printer ID and communication port) from theinterface board 4 (through the client terminal 2 (print control script23)) as a response to the authentication request information sent fromthe authentication request information transmission unit 511. Theprinter authentication unit 513 has as main parts the control unit 11and authentication processor 501, and authenticates the printer 3 bycomparing the encrypted authentication information contained in theauthentication response information received by the authenticationresponse information reception unit 512 with the result of encryptingthe authentication request information sent by the authenticationrequest information transmission unit 511 using the server encryptionkey. If the encrypted authentication information and the result of theencryption operation match, authentication is determined to havesucceeded, and authentication is determined to have failed if there isno match.

The authentication result transmission unit 514 includes as main partsthe control unit 11, authentication processor 501 and HTTP server 14,and sends the authentication result from the printer authentication unit513 to the client terminal 2. If the authentication result is thatauthentication succeeded, the printer ID and communication portinformation that was received with the encrypted authenticationinformation for which authentication succeeded is sent to the clientterminal 2. If authentication failed, a warning message to that effectis sent to the client terminal 2. Note that this fifth embodiment alsosends a warning message when authentication fails for all printers 3(printers 3A to 3C).

The client terminal 2 includes a web page acquisition unit 71, drawingprocess unit 72, authentication process request unit 521, authenticationrequest information relay unit 522, authentication request informationrelay unit 522, authentication response information relay unit 523,authentication result reception unit 524, print data generation unit 73,and print command unit 525.

The authentication process request unit 521 includes as main parts thecontrol unit 51 and print control script 23, and by means of the printcontrol script 23 requests the web application server 1 to run theprinter 3 authentication process. The authentication request informationrelay unit 522 includes as main parts the control unit 51 and printcontrol script 23, and receives and relays authentication requestinformation from the web application server 1 to the interface board 4according to the print control script 23. The authentication responseinformation relay unit 523 includes as main parts the control unit 51and print control script 23, and receives and relays authenticationresponse information from the interface board 4 to the web applicationserver 1 by means of the print control script 23.

The authentication result reception unit 524 includes as main parts thecontrol unit 51 and print control script 23, and receives theauthentication result from the web application server 1 by means of theprint control script 23. If the received authentication result indicatesan authentication success, the printer ID and communication portreceived with the authentication result are set as the information forthe output printer 3 (output printer information). If the receivedauthentication result was that authentication failed, the warningmessage received with the authentication result is displayed on the webbrowser 56. The print command unit 525 includes as main parts thecontrol unit 51 and print control script 23, and sends the outputprinter information (information for the successfully authenticatedprinter 3) set by the authentication result reception unit 524 linked tothe print data generated by the print data generation unit 73 to theinterface board 4.

The interface board 4 includes an authentication request informationreception unit 531, encryption processor 532, authentication responseinformation transmission unit 533 and print data relay unit 534. Theauthentication request information reception unit 531 includes as mainparts the control unit 31, encryption processor 502 and HTTP server 35,and receives authentication request information from the web applicationserver 1 (through the (client terminal 2 (print control script 23)). Theencryption processor 532 includes as main parts the control unit 31 andencryption processor 502, encrypts the received authentication requestinformation using the printer encryption key related to each printer 3registered in the printer management database 503, and generatesencrypted authentication information for each printer 3.

The authentication response information transmission unit 533 includesas main parts the control unit 31, encryption processor 502 and HTTPserver 35, and sends the encrypted authentication information producedby the encryption processor 532, and information about the printer IDand communication port linked to the printer encryption key used toproduce the encrypted authentication information, as the authenticationresponse information to the web application server 1 (through the(client terminal 2 (print control script 23)). The print data relay unit534 includes as main parts the control unit 31, receives the outputprinter information and print data from the client terminal 2 (printcommand unit 525), and sends the print data to the printer 3 specifiedby the received output printer information.

The printer authentication process and printing process of the networksystem SY5 according to the fifth embodiment of the invention aredescribed next with reference to FIG. 17. Note that steps S121-S123,S138-S148 in FIG. 17 are the same as steps S31-S33, S39-S49 in FIG. 8according to the third embodiment of the invention, and detaileddescription thereof is therefore omitted.

When the client terminal 2 receives a start printing command in S123,the client terminal 2 sends an authentication process request for theprinter 3 to the web application server 1 by means of the print controlscript 23 (S124). When the authentication process request is received,the web application server 1 (control unit 11) generates authenticationrequest information (a random numeric string) and sends the resultingauthentication request information to the client terminal 2 (S125), andthe print control script 23 of the client terminal 2 then relays (sends)the received authentication request information to the interface board 4(S126).

When the interface board 4 (control unit 31) receives the authenticationrequest information from the client terminal 2 (S127, authenticationrequest information reception step), the interface board 4 applies theencryption process to the authentication request information (S128).This encryption process encrypts the authentication request informationusing the printer encryption key for each printer 3 registered in theprinter management database 503, and generates encrypted authenticationinformation. This fifth embodiment encrypts the authentication requestinformation using the printer encryption keys respectively related tothe three printers 3A to 3C. More specifically, three sets of encryptedauthentication information are created using the three different printerencryption keys.

Next, the interface board 4 sends the resulting encrypted authenticationinformation and the printer ID and communication port information(authentication response information) related to the printer encryptionkeys used to encrypt the encrypted authentication information to theclient terminal 2 (S129, authentication response informationtransmission step), and the client terminal 2 sends (relays) thereceived authentication response information to the web applicationserver 1 according to the print control script 23 (S130). Morespecifically, this fifth embodiment of the invention sendsauthentication response information for printer 3A, authenticationresponse information for printer 3B, and authentication responseinformation for printer 3C from the interface board 4 to the webapplication server 1.

When the authentication response information is received (S131), the webapplication server 1 applies the authentication process to theauthentication response information received for each printer (S132,printer authentication step). This authentication process first encryptsthe authentication request information sent to the interface board 4using the locally stored server encryption key. Next, the result ofencryption using the server encryption key is compared with theencrypted authentication information contained in the receivedauthentication response information, authentication succeeds if theymatch, and authentication fails if they do not match. After theauthentication process ends, the web application server 1 sends theauthentication result (result of comparison) to the client terminal 2(S133, authentication result transmission step). The printer ID andcommunication port information linked to the encrypted authenticationinformation for which authentication succeeded is also sent at this timeif authentication succeeded. If authentication fails in allauthentication processes (authentication of printers 3A, 3B and 3C), awarning message indicating there is not a printer 3 for which use isallowed is sent.

The client terminal 2 then receives the authentication result from theweb application server 1 by means of the print control script 23 (S134).If the received authentication result is that authentication failed(S135 returns No), the client terminal 2 displays the received warningmessage on the web browser 56 (S136). If the received authenticationresult is information that authentication was successful (S135 returnsYes), the client terminal 2 sets the received printer ID andcommunication port as the information for the output printer 3 (outputprinter information) (S137).

Next, the client terminal 2 generates and saves the print data by meansof the print control script 23 (S138-S141, drawing process step, printdata generation step), and after print data generation is completed(S141 returns Yes), sends the output printer information set in S137 andthe print data saved in the storage unit 52 to the interface board 4according to the print control script 23 (S142, printing instructionstep).

The interface board 4 sends the print data to the printer 3 specified bythe output printer information received from the client terminal 2(S143, S144). The printer 3 (control unit 41) then prints based on theprint data after all print data is received from the interface board 4(S145-S148).

As described above, when plural printers 3 are connected and printing isperformed according to a print control script 23 embedded in a web page21, this fifth embodiment of the invention authenticates the connectedprinters 3, and enables printing only from a printer 3 for whichauthentication is successful (authentication is allowed). Morespecifically, having a web browser 56 that displays (acquires) a webpage 21 installed on the client terminal 2 is sufficient to restrict theprinter 3 that can be used for output, and installing a printer driveron each client terminal 2 as in the related art is not necessary.

Note that the units (functions) of the interface board 4 in the secondto fifth embodiments described above could be rendered by a commonpersonal computer (device server). Alternatively, these functions couldbe incorporated in one (such as printer 3A) of the plural printers 3described above. These units could also be built into each of theprinters 3.

In the first to fifth embodiments described above, the client terminal 2generates print data from the image data in a drawing area, and sendsthis print data to the printer 3, but the image data could be segmentedinto data blocks of a size that can be sent in a single transmission,and the print data (segmented print data) could be generated andtransmitted separately for each image data block. More specifically, theprint data can be segmented and transmitted in data blocks of a sizethat can be transmitted in a single data transmission. As a result,deletion of the print control script 23 and interruption of print datatransmission at some indeterminate point when sending a large amount ofprint data as a result of the web page 21 changing during print datatransmission can be prevented.

Note, further, that elements of the network systems SY1 to SY5 above canbe provided as a program. The program can also be provided stored on astorage medium (not shown). Examples of such recording media includeCD-ROM, flash ROM, memory cards (including CompactFlash (R), smartmedia, and memory sticks), Compact Discs, magneto-optical discs, digitalversatile discs, and floppy disks.

The invention is also not limited to the foregoing embodiments, and thecomponents and processes of the network systems SY1 to SY5 describedabove can be desirably varied without departing from the scope of theinvention.

INDUSTRIAL APPLICABILITY

As described above, the invention is useful as a network system,interface board, printing control method for a network system, and aprogram, and is particularly suited to controlling a printer withoutrequiring a printer driver that depends on the computer environment.

REFERENCE SIGNS LIST

-   1 web application server-   2 client terminal-   3 printer-   3A printer-   3B printer-   3C printer-   4 interface board-   5 device management server-   15 web application-   17 user database-   402 user database-   21 web page-   22 page control script-   23 print control script-   36 device list-   53 display unit-   56 web browser-   71 web page acquisition unit-   314 web page acquisition unit-   72 drawing process unit-   73 print data generation unit-   74 print command unit-   214 print command unit-   413 print command unit-   525 print command unit-   76 print settings unit-   213 print settings unit-   81 print data reception unit-   221 print data reception unit-   82 print control unit-   201 device information acquisition unit-   202 device list generation unit-   203 device list transmission unit-   211 device list acquisition unit-   315 device list acquisition unit-   212 printer selection unit-   215 device state transmission unit-   231 device state reception unit-   232 device state reporting unit-   301 user identification information reception unit-   302 user authentication unit-   311 log-in screen display unit-   313 user identification information transmission unit-   411 user identification information input screen display unit-   422 user authentication unit-   423 output printer setting unit-   424 print data relay unit-   503 printer management database-   513 printer authentication unit-   514 authentication result transmission unit-   531 authentication request reception unit-   533 vertical response transmission unit-   SY1 network system-   SY2 network system-   SY3 network system-   SY4 network system-   SY5 network system

1. A client terminal that accesses a web application server on which aweb application operates using a web browser, the client terminalcomprising: a web page acquisition unit that acquires from the webapplication server a web page embedding a print control script thatoperates on the web browser and controls printing related to the webpage; a display unit that displays the acquired web page as a displayedweb page; a drawing process unit that accepts an input operation on thedisplayed web page and draws a result of the input operation in aspecific drawing area; a print data generation unit that generates printdata by converting image data written in the drawing area to a formenabling processing by a printer according to the print control scriptas a result of a print operation performed on the displayed web page;and a print command unit that commands the printer to print the printdata according to the print control script.
 2. The client terminaldescribed in claim 1, wherein: the printer is specified in the printcontrol script; and the print command unit issues a print command to theprinter specified by the print control script.
 3. The client terminaldescribed in claim 1, further comprising: a device list acquisition unitthat acquires a device list showing a list of usable printers from anexternal source according to the print control script; and a deviceselection unit that selects the printer from the device list accordingto the print control script.
 4. The client terminal described in claim1, further comprising: an identification information input windowdisplay unit that displays an identification information input windowfor inputting identification information identifying a user of theclient terminal; an identification information transmission unit thatsends the identification information input by an input operation to theidentification information input window to the web application server; adevice list acquisition unit that acquires the web page by the web pageacquisition unit when user authentication succeeds, and acquires thedevice list from the web application server according to the printcontrol script embedded in the acquired web page; and a device selectionunit that selects the printer from the acquired device list according tothe print control script.
 5. The client terminal described in claim 1,further comprising an identification information input window displayunit that displays an identification information input window forinputting identification information identifying a user of the clientterminal; the print command unit executing a process that sends theprint data to be printed linked to the identification information inputby an input operation to the identification information input window toa device server according to the print control script as a print commandfor the printer.
 6. The client terminal described in claim 1, wherein:the print command unit of the client terminal issues a print command tothe printer specified by externally generated and authenticated printeridentification information according to the print control script.
 7. Theclient terminal described in claim 1, wherein: the print data generationunit temporarily stores the generated print data in a specific storagearea; and the print command unit commands the printer to print the printdata in the specific storage area after all print data is stored in thespecific storage area.
 8. The client terminal described in claim 1,wherein: the display unit displays a change-page confirmation window forselecting whether or not to change the web page according to the printcontrol script if a change-page event that changes the web page occursduring transmission of the print data in conjunction with a printcommand from the print command unit.
 9. The client terminal described inclaim 1, wherein: the print command unit interrupts print datatransmission when changing the web page is executed during transmissionof the print data according to a print command; and the display unitdisplays a message indicating that the print data transmission wasinterrupted.
 10. The client terminal described in claim 8, wherein: theprint command unit executes a print data transmission processaccompanying the print command parallel to a change-page confirmationwindow display process.
 11. The client terminal described in claim 1,wherein: the print control unit executes a printing process based on theprint data after all of the print data to be printed is received by theprinter.
 12. The client terminal described in claim 1, wherein: theprint data generation unit segments the image data into blocks of a datasize that can be transmitted in a single data communication, andgenerates segmented print data that converts each segmented image datablock to a form enabling printing by the printer; and the print commandunit transmitting the print data according to a print command insegmented print data units.
 13. The client terminal described in claim1, further comprising: a print setting unit that configures printsettings of the printer according to the print control script.
 14. Theclient terminal described in claim 1, further comprising: a devicemanagement server that communicates with the client terminal over thenetwork and centrally manages printer status; a device statetransmission unit that acquires device state information indicating atleast the printer status and sends the acquired device state informationto a device management server according to the print control script. 15.A method of operating a client terminal in connection with controllingprinting on a network system, the method comprising: acquiring, by theclient terminal, from a web application server a web page embedding aprint control script that operates on a web browser and controlsprinting related to the web page; displaying the acquired web page;accepting an input operation on the displayed web page and drawing aresult of the input operation in a specific drawing area; generatingprint data by converting image data written in the drawing area to aform enabling processing by a printer according to the print controlscript as a result of a print operation performed on the displayed webpage; and commanding the printer to print the print data according tothe print control script.
 16. The method of operating a client terminaldescribed in claim 15, further comprising: generating a device listbased on device information acquired by a device server, and receivingthe generated device list by the client terminal; executing a devicelist acquisition step that acquires the device list from the deviceserver according to the print control script, and selecting the printerfrom the device list according to the print control script; wherein thecommanding step issues a print command to the printer selected in thedevice selecting step according to the print control script.
 17. Themethod of operating a client terminal described in claim 15, furthercomprising: displaying an identification information input window forinputting identification information, sending the identificationinformation input by an input operation to the identificationinformation input window to the web application server, acquiring theweb page by the web page acquiring step when user authentication by theuser authentication step succeeds, and acquiring the device list fromthe web application server according to the print control scriptembedded in the acquired web page, and selecting the printer from theacquired device list according to the print control script; and theprint commanding step issuing a print command to the printer selected bythe device selection step according to the print control script.
 18. Themethod of operating a client terminal described in claim 15, furthercomprising: executing an identification information input window displaystep that displays an identification information input window forinputting identification information identifying a user of the clientterminal; the print commanding step executing a process that sends theprint data to be printed linked to the identification information inputby an input operation to the identification information input window tothe device server according to the print control script as a printcommand for the printer.
 19. Anon-transitory computer-readable mediumstoring a program that causes a computer to execute the steps of themethod of operating a client terminal described in claim 15.